Method for repairing hardware faults in memory chips

ABSTRACT

The invention relates to a system and to a method for repairing bit errors in memory chips having a multiplicity of memory cells, in which a bit error is detected using an error identification algorithm, the address of the faulty memory cell is determined and the fault is repaired by activating a redundant memory cell, with the repair being effected in the memory chip&#39;s finally installed state with the end user.

[0001] The invention relates to a method for repairing hardware faults in memory chips in a data processing unit, with the repair being effected, in particular, with the end user of the unit.

[0002] In modern data processing systems, information needs to be processed, stored and read with as little error as possible. As memory size increases, the likelihood of an error rises, which in the worst case can result in the system crashing.

[0003] Memory chips, such as DRAMs, SRAMs or ROMs, are therefore tested precisely before they are installed in a finished product, such as a PC.

[0004] The memory chips can be checked for faults at several times in the memory chips' manufacturing process. A first test on the chips is normally effected at wafer level (the chip is still in the raw state and has not yet been inserted into a package), with faulty memory cells being identified and repaired by laser cutter, for example.

[0005] If the memory chip is already in a package, a fault can be located and repaired using a tester, for example. To this end, the chip needs to have redundant memory cells which are activated by means of e-fuses (electrically activatable fuses), for example.

[0006] The checking routines applied during the tests can never fully check a memory chip with certainty, however, and therefore have gaps. During normal operation of a DIMM module (DIMM: Dual Inline Memory Module), data combinations can therefore arise which provoke a fault. In this case, the end user has no way of locating and repairing faults.

[0007] It is known practice for data processing units to incorporate an error identification algorithm (ECC algorithm; ECC: Error Correction Code) which can identify and correct single-bit errors and possibly also multibit errors. In this case, however, error correction is performed exclusively using correction algorithms and leaves the actual cause of the error, namely the hardware fault in the chip, untouched.

[0008] It is therefore the object of the present invention to provide a method and a system which can be used to eliminate a hardware fault in a memory chip in the finished product (with the customer or end user).

[0009] The invention achieves this object by means of the features specified in patent claim 1. Further refinements of the invention are the subject matter of subclaims.

[0010] The fundamental inventive concept of the invention is that of locating a fault in the unit and of starting a repair mode in which memory cells which are not functioning in a chip are replaced by redundant memory cells, i.e. the hardware fault is repaired. The repair is effected with the end user of the unit.

[0011] The invention therefore proposes a method for repairing bit errors in memory chips having a multiplicity of memory cells, which comprises the following steps:

[0012] a bit error is detected using an error identification algorithm;

[0013] the address of the faulty memory cell(s) is determined;

[0014] the error is repaired by activating redundant memory cells, with the repair being effected in the installed state of the memory chip, particularly with the end user.

[0015] Said unit is preferably a data processing system having a CPU, a memory management unit, such as a chipset, and a plurality of memory chips which are installed in a DIMM module, for example.

[0016] The error identification algorithm used can identify single-bit errors and preferably also multibit errors. Such an algorithm is the Hamming code, for example. Other error identification algorithms can likewise be used, however.

[0017] An error message in the system can be based either on a soft error or on a hard error. A soft error is triggered by a one-off event, such as alpha radiation. By contrast, “hard errors” are genuine physical faults, which can arise as a result of degradation of the cell transistors (selection transistors), for example.

[0018] On the basis of the invention, hard errors should be repaired, whereas soft errors represent only a one-off random event and therefore do not require repair.

[0019] To distinguish between a soft error and a hard error, the address of the memory cell where an error has occurred is stored and is compared with newly arising error addresses. If an error occurs at the same address a further time, it can be assumed that there is a hard error.

[0020] To detect a hard error, it is advantageous, following the detection of a bit error, to run a memory test routine which preferably checks the memory area containing the faulty memory cell a further time.

[0021] In accordance with one preferred refinement of the invention, the addresses of faulty memory cells are stored in a nonvolatile memory. To this end, it is possible to provide an EEPROM, for example, in order to continue to have the data available even after the system is turned off.

[0022] Optionally, the address of the faulty memory cells is temporarily stored and the presence of a bit error is indicated to the user. The user can then run a test program and can also repair the memory chip.

[0023] In accordance with one specific refinement of the invention, the memory chip has a multiplicity of redundant memory cells which can preferably be activated by means of e-fuses (electrically activatable fuses or switches).

[0024] Following detection of a bit error and possibly a further check on the associated address, a repair mode is preferably started. In the repair mode, the faulty area of a memory chip is replaced by redundant cells to which the address of the faulty memory cells is assigned.

[0025] The repair mode can be initiated, by way of example, by setting a data bit, which is set in the extended mode register (EMR) of a DDR memory chip, for example. To repair the memory chip, by way of example, a standard command, preferably a write command, is used at a particular address of the memory chip. If a repair mode signal (e.g. set data bit in the EMR) and a write command are present, the memory chip performs a repair if a corresponding signal (e.g. a “1”) is present on a data line in the memory chip. The combination of the write command and a set data bit is used to determine the address of the bit error on the memory module clearly.

[0026] The signal for performing a repair is preferably transferred via that data line on which the bit error has been indicated. All the other data lines are preferably deactivated in the repair mode.

[0027] The setting of a data bit in the memory chip, which signals a repair mode, serves in particular to save another repair command which would otherwise need to be transferred to the memory chip by the chipset via the command lines.

[0028] If it is possible to transmit a repair command to the memory chip via command and address lines, a repair can also be initiated by such a repair command. The memory chip is then preferably repaired automatically.

[0029] The result of the repair is preferably logged, stored at an address and can be read using another standard command, e.g. using a read command, when the repair bit is set (in the EMR).

[0030] The repair of a memory chip can, by way of example, be started and performed automatically. Alternatively, the user of the unit can be made aware of the error and can perform the repair under user control using a specific program, for example.

[0031] The invention is explained in more detail below by way of example with reference to the appended drawing.

[0032] The FIGURE shows a system having a CPU 1, a chipset 2 and a plurality of DIMM memory modules 3. The memory modules 3 in turn comprise a plurality of memory chips 7 (DRAMs).

[0033] Each memory chip 7 is provided with separate data lines 5 which can be used to transfer the data from and to the chipset 2. Commands and addresses are transferred via corresponding command and address lines 6.

[0034] The address contents are checked by an ECC algorithm. If a data error occurs which is identified by the chipset 2, a repair mode is started and the appropriate memory chip is repaired.

[0035] The repair is initiated by setting a repair bit which is preferably stored in the mode or extended mode register of the memory chip. A write command is then sent to the chip's error address, and the faulty chip interprets it as a repair command if there is a signal on a data line.

[0036] The repair signal is preferably transferred via that data line on which the bit error has been indicated. All the other data lines are preferably deactivated in the repair mode.

[0037] Optionally, the repair can also be initiated by sending a separate repair command via the address and data lines 6.

[0038] The repair is then performed automatically or under user control, with faulty memory cells being replaced by redundant cells.

[0039] The result of the repair is preferably logged and can be read. If the repair has not been successful, the operation can be repeated. Following a successful repair, the repair mode data bit which was set is reset again.

[0040] List of Reference Numerals 1 CPU 2 Chipset 3 Memory modules 4 Data bus 5 Data lines 6 Command and address lines 

1. Method for repairing bit errors in memory chips (7) having a multiplicity of memory cells, which comprises the following steps: bit errors are detected using an error identification algorithm; the addresses of the faulty memory cells are determined; and the bit errors are repaired by activating redundant memory cells, with the repair being effected in an installed state of the memory chip.
 2. Method according to claim 1, characterized in that, in the installed state, the memory chips (7) are mounted permanently on a support or on a base and are integrated in a data processing unit.
 3. Method according to claim 1 or 2, characterized in that the memory chips (7) are arranged in a system, comprising a CPU (1), a memory management unit (2) and a plurality of the memory chips (7).
 4. Method according to one of the preceding claims, characterized in that the error identification algorithm is suitable for detecting single-bit errors and/or multibit errors.
 5. Method according to one of the preceding claims, characterized in that a Hamming code is used for error identification.
 6. Method according to one of the preceding claims, characterized in that the address of a faulty memory cell is stored in a nonvolatile memory.
 7. Method according to one of claims 1 to 5, characterized in that the address of a faulty memory cell is temporarily stored and the presence of an error is indicated to the user.
 8. Method according to one of the preceding claims, characterized in that a memory test program is executed.
 9. Method according to one of the preceding claims, characterized in that redundant memory cells are activated by means of e-fuses.
 10. Method according to one of the preceding claims, characterized in that a memory cell in which a bit error has occurred is checked a further time in order to distinguish between a soft error and a hard error.
 11. Method according to one of the preceding claims, characterized in that, when a bit error has been detected, setting a data bit initiates a repair mode.
 12. Method according to one of the preceding claims, characterized in that, in a system having a plurality of memory chips (7), the data lines (5) to the memory chips (7) which are not faulty are deactivated in the repair mode and only the data line (5) to the faulty memory chip (7), on which line an error has been indicated, is active.
 13. Method according to claim 12, characterized in that the data bit which signals the repair mode is stored in a register, particularly in the mode register of the memory chip (7).
 14. Method according to one of the preceding claims, characterized in that the repair mode is started automatically.
 15. Method according to one of claims 1 to 13, characterized in that the occurrence of a bit error is indicated to a user, after which error correction can be performed using a program.
 16. Method according to claim 9, characterized in that, to produce a relatively high voltage required for the e-fuses, charge pumps are provided which are fed, in particular, from an external source.
 17. Method according to one of the preceding claims, characterized in that a repair is followed by logging whether the repair was successful. 